Edelleenohjauksia WordPressiin

Joskus on tarvetta saada WordPressiin edelleenohjauksia eli redirectejä. Perinteisesti näitä on tehty muun muassa .htaccess-tiedostoon, mutta se on lopulta melko epäkäytännöllinen tapa. Etenkin jos käytössä on Nginx-webbipalvelin, ohjausten tekeminen palvelintasolla on hivenen työlästä.

Yksinkertainen ratkaisu on asentaa tätä tarkoitusta varten lisäosa. Redirection on suosittu työkalu ja ajaa asian hyvin. Se tekee kaikenlaista muutakin aiheeseen liittyvää.

Jos ei kuitenkaan halua lisätä sivustonsa lisäosakuormaa (mihin on monia hyviä syitä), esittelen tässä nyt yksinkertaisen ratkaisun tehdä edelleenohjauksia perinteiseen tapaan WordPressissä. Tämä menetelmä edellyttää palvelimella olevan tiedoston muokkaamista; koodiallergisten kannattaa ottaa suosiolla käyttöön Redirection.

Samoin jos palvelimella olevien tiedostojen muokkaaminen on jotenkin työlästä, Redirection on parempi vaihtoehto. Jos muokkaaminen on kuitenkin yksinkertaista, esimerkiksi jos tiedostot löytyvät myös omalta koneelta ja ovat versionhallinnan piirissä, kuten monissa moderneissa WordPress-palveluissa on, tämä on hyvin käytännöllinen ratkaisu.

Luo /wp-content/mu-plugins/-hakemistoon tiedosto nimeltä ohjaukset.php ja sen sisällöksi tällainen:

<?php
/**
Plugin Name:  Edelleenohjaukset
Plugin URI:
Description:  Rekisteröi nipun edelleenohjauksia.
Version:      1.0.0
Author:       Mikko
Author URI:   https://mikkosaari.fi/
License:      MIT License

@package Mikko_redirects
 */

add_action( 'muplugins_loaded', 'edelleenohjaukset' );
function edelleenohjaukset() {
    $ohjaukset = array(
        '/luokat/pakanrakennuspelit/' => 'https://www.lautapeliopas.fi/pelimekaniikat/pakanrakennuspelit/',
        '/luokat/draftaaminen/'       => 'https://www.lautapeliopas.fi/pelimekaniikat/draftaaminen/',
    );

    if ( isset( $ohjaukset[ $_SERVER['REQUEST_URI'] ] ) ) {
        header( 'Location: ' . $ohjaukset[ $_SERVER['REQUEST_URI'] ], true, 301 );
        die();
    }
}

Listaa haluamasi edelleenohjaukset $ohjaukset-taulukkoon. Ensin on sivun osoite ilman verkkosivujen tunnusta, sitten täydellinen osoite verkkotunnuksen kanssa.

Tämä luo automaattisesti käyttöön otettavan lisäosan, joka ohjaa automaattisesti vanhat URL:t pysyvinä 301-edelleenohjauksina uusiin osoitteisiin.

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *

This site uses Akismet to reduce spam. Learn how your comment data is processed.